// models/enter.go
// =============================================================================
// | 包: models                                                              |
// | 功能: 定义应用程序的数据模型，映射数据库表结构                           |
// =============================================================================
package models

import (
	"time" // 时间包 - 提供时间相关功能
)

// =============================================================================
// | 结构体: Model                                                           |
// | 功能: 数据模型基础结构体，提供公共字段                                   |
// | 说明: 作为其他数据模型的嵌入结构体，提供ID和时间戳字段                   |
// |----------------------------------------------------------------------------|
// | 字段: ID - uint - 主键ID，唯一标识记录                                   |
// | 字段: CreatedAt - time.Time - 记录创建时间                               |
// | 字段: UpdatedAt - time.Time - 记录最后更新时间                           |
// =============================================================================
type Model struct {
	ID        uint      `gorm:"primaryKey" json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
}

// =============================================================================
// | 结构体: IDRequest                                                        |
// | 功能:  api 接口 ID请求数据结构，用于接收包含ID参数的请求                           |
// | 说明: 适用于通过ID查询、更新、删除等操作的接口参数绑定                   |
// |----------------------------------------------------------------------------|
// | 字段: ID - uint - 请求的资源ID，用于标识具体资源                         |
// |       (支持JSON、表单和URI参数绑定)                                      |
// =============================================================================
type IDRequest struct {
	ID uint `json:"id" form:"id" uri:"id"` // ID字段 - 支持多种参数绑定方式
}

// =============================================================================
// | 结构体: RemoveRequest                                                    |
// | 功能: API批量删除请求数据结构，用于接收包含多个ID的删除请求                |
// | 说明: 适用于需要批量删除多条记录的接口参数绑定                           |
// |----------------------------------------------------------------------------|
// | 字段: IDList - []uint - 待删除记录的ID列表                               |
// |       (支持JSON参数绑定)                                                  |
// =============================================================================
type RemoveRequest struct {
	IDList []uint `json:"idList"` // ID列表 - 批量删除的记录标识
}
